<#-- CopyPropertiesTemplate.ftl -->
package com.example.generated;

<#list classImportSet as class>import ${class};
</#list>

/**
* 本文件由freemarker生成，禁止直接修改本文件！！！
* 需要修改的话先修改src\main\resources\config\mapping.json配置，
* 然后运行src\main\java\com\example\Main.java重新生成本文件即可。
* 重新生成本文件后git对比确保新生成的java文件只修改了自己的那一部分，然后将新生成的java提交git。
*/
public class PropertyCopier {
<#list mappings as mapping>
    /**
    * <#if mapping.description?? && mapping.description!="">${mapping.description}</#if>
    * <#if mapping.classDescription?? && mapping.classDescription!="">${mapping.classDescription}</#if>
    * 本文件由freemarker生成，禁止直接修改本文件！！！需要修改的话先修改src\main\resources\config\mapping.json配置，然后运行src\main\java\com\example\Main.java重新生成本文件即可。重新生成本文件后git对比确保新生成的java文件只修改了自己的那一部分，然后将新生成的java提交git。
    */
    public void copyPropertiesFrom${mapping.sourceClassName}To${mapping.targetClassName}<#if mapping.version?? && mapping.version!="">V${mapping.version}</#if>(${mapping.sourceClassName} source, ${mapping.targetClassName} target) {
    <#list mapping.fields as field>
        target.set${field.targetField?cap_first}(${field.sourceField});<#if field.fieldDescription?? && field.fieldDescription!="">//${field.fieldDescription}</#if>
    </#list>
    }

</#list>
}
